package com.anzia.vueblog.common.lang;

import lombok.Data;

import java.io.Serializable;

/**
 *@ClassName Result
 *@Description
 *@Author Anzia.
 *@Date 2021/4/24 14:26
 *@Version 1.0
 **/
@Data
public class Result implements Serializable {

    private int code; //200是正常，非200表示异常
    private String msg;
    private Object data;

    // data比较重要，所以要进行再次封装
    public static Result success(Object data) {
        return success(200, "操作成功", data);
    }

    public static Result success(int code, String msg, Object data) {
        Result result = new Result();
        result.setCode(code);
        result.setMsg(msg);
        result.setData(data);
        return result;
    }

    public static Result fail(String msg) {
        return fail(400, msg, null);
    }

    public static Result fail(String msg, Object data) {
        return fail(400, msg, data);
    }

    public static Result fail(int code, String msg, Object data) {
        Result result = new Result();
        result.setCode(code);
        result.setMsg(msg);
        result.setData(data);
        return result;
    }
}
